<!--
 * @FilePath     : /lodash/demo/2-4.html
 * @Description  :
 * @Date         : 2025-03-11 17:49
 * @Author       : Fang YingGui
 * @LastEditors  : fangyinggui 18715384437@163.com
 * @LastEditTime : 2025-03-11 17:51
-->
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>documentName</title>
    <link rel="stylesheet" href="" />
  </head>
  <body>
    <script src="/library/jquery.min.js"></script>
    <script src="/library/lodash.min.js"></script>
    <script>
      function calculateLayout() {
        console.log('获取下当前窗口尺寸', $(window).width())
      }
      // 避免窗口在变动时出现昂贵的计算开销。
      jQuery(window).on(
        'resize',
        _.debounce(calculateLayout, 1000, {
          maxWait: 3000,
        })
      )
      /*
      结果：
      设置了 wait=1000ms，maxWait=3000ms；
      在第1次触发事件后，如果在1000ms内再次出发事件，计时器会被重置并重新开始计时，
      只有当计时器达到3000ms时，无论是否再次触发事件，函数都会被执行。
      */
    </script>
  </body>
</html>
